package com.designpatterns.singleton.lazy;

/**
 * @author Tinu 1810989@qq.com
 */
//懒汉式单例
//使用的时候才进行实例化
public class LazySingleton {

    private static LazySingleton lazySingleton = null;

    private LazySingleton() {

    }

    //存在线程安全问题
//    public static LazySingleton getInstance() {
//        if (lazySingleton == null) {
//            lazySingleton = new LazySingleton();
//        }
//        return lazySingleton;
//    }

    //不存在线程安全问题
    public static synchronized LazySingleton getInstance() {
        if (lazySingleton == null) {
            lazySingleton = new LazySingleton();
        }
        return lazySingleton;
    }
}
